package io.gitee.caoxiaoyu97.configcenter.client;

import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestTemplate;

import java.util.Map;

/*********************************************************
 * 文件名称：RemoteConfigService.java
 * 系统名称：CXY自定义系统
 * 模块名称：io.gitee.caoxiaoyu97.configcenter
 * 功能说明：获取配置中心服务
 * 开发人员 @author：caoxy31978
 * 开发时间 @date：2023/7/5 11:23
 * 修改记录：程序版本  修改日期  修改人员  修改单号  修改说明
 *********************************************************/
public class RemoteConfigService {

    public static Map<String,Object> getRemoteConfig(){
        ConfigCenterParam instance = ConfigCenterParam.getInstance();
        if (!instance.isEnabled()){
            return null;
        }
        return getConfigByHttp(instance);
    }

    private static Map getConfigByHttp(ConfigCenterParam instance) {
        try {
            RestTemplate restTemplate = new RestTemplate();
            ResponseEntity<Map> mapResponseEntity =
                    restTemplate.postForEntity("http://" + instance.getUrl() + "/application/queryConfig", instance,
                            Map.class);
            Map body = (Map) mapResponseEntity.getBody().get("data");
            return body;
        }catch (Exception e){
            return null;
        }

    }
}
